This invention relates to automatic gain controls (xe2x80x9cAGCxe2x80x9d). More specifically, it relates to a method and system for implementing an AGC using a lookup table, and an AGC having the ability to adaptively maintain a desired amplitude output signal.
Today, telephones having a speakerphone allowing for hands-free operation or for a number of people in a room to simultaneously communicate on the telephone are being used with increasing frequency. Almost every modern office telephone includes a speakerphone to pickup and transmit sounds without having to use the telephone handset. Such speakerphones allow a number of people to simultaneously converse and interact over a single telephone call.
One problem associated with speakerphones is that the people involved in the conversation will most likely be different distances from the microphone that receives their voices. As a result, the volume of the different speaker""s voices will vary with their distance from the microphone. For example, the volume of speakers physically situated near the microphone tends to be loud, while other speakers are barely audible. Simply amplifying the microphone so that the lowest volume speakers can be heard may result in other speaker""s voices being over-amplified. This effect can be very distracting, making it difficult to listen and understand the conversation.
In a speakerphone application, automatic gain control (xe2x80x9cAGCxe2x80x9d) circuits can be used to automatically vary the amplification of different speaker""s voices to equalize their relative volumes. AGC circuitry is typically employed to maintain a constant amplification gain for electronic circuitry that may otherwise vary over time. Generally, the gain of an electronic circuit may change over time, varying with several factors such as the amplitude or frequency of the input signal, the ambient temperature, as well as other external and internal factors.
A conventional digital AGC implementation utilizes a linear negative feedback loop. Typically, the AGC circuitry amplifies an input signal to provide an output signal level. The AGC circuitry varies the amplification gain to provide the desired output signal level. To determined the appropriate amplification gain, the output signal level is compared to a desired reference signal level and an error signal computed as the difference between the output signal level and the desired reference signal level. The error signal is fed back to adjust the amplification gain such that the output signal level matches the desired reference signal level. Typically, amplification gain adjustments are made proportional to the error signal computed with respect to an estimate of the output power. The output power is determined as an exponentially weighed average over a time constant.
This conventional type of AGC feedback system does not handle voice signals particularly well because it must deal with transitions from a period of significant signal level, such as a voice signal, to a non-signal, such as a period of silence after the transition has already occurred. This conventional system assumes the input is statistically constant, or in other words, wide-sense stationary. An actual voice signal, however, is not constant but varies widely during speech as well as in between periods of speech and non-speech. An automatic gain control employing only feedback compensation may therefore cause the boundaries between intervals of speech and non-speech to become blurred.
In accordance with an illustrative embodiment of the present invention, problems associated with the automatic gain control (xe2x80x9cAGCxe2x80x9d) of a speakerphone are addressed. The present invention provides an AGC system that can be utilized for equalizing the amplification gain of a speakerphone microphone.
In an illustrative embodiment, an open loop AGC with an amplification gain lookup table to store the appropriate amplification gain values is described. The illustrative embodiment includes a power level estimator, the amplification gain lookup table, and a multiplier. The power level estimator estimates the power level of the input signal and the AGC system selects the appropriate amplification gain from the amplification gain lookup table as a function of the input signal power. The multiplier multiplies the input signal by the amplification gain to provide an AGC output signal.
In another aspect of the invention, the amplification gain lookup table has a gain transfer function providing good signal amplitude control.
Alternatively, the appropriate gain value may be calculated as a direct function evaluation.
In yet another aspect of the invention, the non-signal/signal input condition is detected before application of the gain lookup table.
In another embodiment of the invention, a method for providing automatic gain control is described. The illustrative method includes the steps of estimating the power of the signal, generating a gain value in accordance with the power of the signal, and applying the gain value to the signal to form the automatic gain control signal.
In another embodiment of the invention, a closed loop AGC with the ability to adapt to the particular characteristics of the input signal is described. During operation, the closed loop AGC may learn and compensate for the non-linearity of the AGC system. An illustrative embodiment includes an AGC system, an AGC output power estimation block, an adder and a gain lookup table. The AGC output power estimation block estimates the output power of the AGC system. The adder compares the AGC output power to an amplitude set-point. The difference between the amplitude set-point and the AGC output power is computed as an error signal. The error signal may be scaled by a factor and used to update the gain values in the lookup table. The output signal of the AGC system is used to adapt the amplification gain lookup table to compensate for the particularities of the input signal and the system is adapted as it operates.
In another aspect of the invention, a method of providing an adaptive AGC is described. The exemplary method allows the non-linearity of the system to be learned and compensated.
In yet another embodiment of the invention, executable software code and a computer system with memory is used to implement the AGC system. Alternatively, dedicated hardware is used to implement the AGC system.
The illustrative embodiment provides an AGC system providing good amplitude gain control. The amplification gain table allows the gain level to be selected in a non-linear fashion to provide the most appropriate gain level. In addition, the amplification gain tailor can also be dynamically modified and adapted to compensate for the non-linearity of the system. By combining feed-forward and feedback compensation, the described embodiment can reduce the distortion of speech caused by conventional feedback-only AGC systems.
The foregoing and other features and advantages of an illustrative embodiment of the present invention will be more readily apparent from the following detailed description, which proceeds with references to the accompanying drawings.